package com.kakarote.admin.mapper;

import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
import com.kakarote.admin.entity.BO.DeptVO;
import com.kakarote.admin.entity.PO.AdminDept;
import com.kakarote.admin.entity.VO.AdminDeptRoleVO;
import com.kakarote.core.entity.BasePage;
import com.kakarote.core.servlet.BaseMapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 * 部门表 Mapper 接口
 * </p>
 *
 * @author zhangzhiwei
 * @since 2020-04-27
 */
public interface AdminDeptMapper extends BaseMapper<AdminDept> {

    /**
     * 根据公司id查询公司下的所有部门
     *
     * @param companyId:公司id
     * @return java.util.List<com.kakarote.admin.entity.BO.DeptVO>
     */
    @InterceptorIgnore(tenantLine = "true")
    List<DeptVO> queryDeptUserList();

    /**
     * 根据公司id查询公司下的所有部门
     *
     * @param companyIdList 公司ID列表
     * @return 公司信息
     */
    @InterceptorIgnore(tenantLine = "true")
    List<AdminDept> queryDeptList();


    BasePage<AdminDeptRoleVO> queryDeptByRole(BasePage<Object> parse, @Param("roleId") Long roleId);
}
